Atributos virtuais
O que são e como usar os atributos virtuais
- Atributos virtuais são uma forma de utilizar métodos (
get
eset
) como atributos por meio de um pré-compilador.
⚠️ Lembre-se que um script com muitos atributos virtuais pode causar um maior tempo de compilação, já que existe um pré-compilador que interpreta e tranforma seu "atributo" no método original antes de compilar seu script ⚠️
Com atributos virtuais:
Exemplo
- Veja que o número de caracteres diminuiu consideravelmente.
public class SuaClasse extends Component {
public int valor = 10; // selecione nas propriedades
public void repeat() {
myObject.position.x = valor;
myObject.position.y = valor;
myObject.position.z = valor;
}
}
Sem atributos virtuais:
Exemplo
- Veja que o número de caracteres aumentou consideravelmente.
public class SuaClasse extends Component {
public int valor = 10; // selecione nas propriedades
public void repeat() {
myObject.getPosition().setX(valor);
myObject.getPosition().setY(valor);
myObject.getPosition().setZ(valor);
}
}
Também é possivel utilizar de atributos virtuais em vetores
Exemplo
- Veja que na função
repeat
não é necessario chamar os métodos das operações.
public class SuaClasse extends Component {
private Vector3 vetor1 = new Vector3(1, 1, 1);
private Vector3 vetor2 = new Vector3(2, 2, 2);
public void start() {
// atribuindo valores com os atributos virtuais
vetor1.x = 1; // o mesmo que vetor1.setX(1);
vetor1.y = 1; // o mesmo que vetor1.setY(1);
vetor1.z = 1; // o mesmo que vetor1.setZ(1);
}
public void repeat() {
// o mesmo que vetor1 = vetor1.sumLocal(vetor2);
vetor1 += vetor2;
// o mesmo que vetor1 = vetor1.subLocal(vetor2);
vetor1 -= vetor2;
// o mesmo que vetor1 = vetor1.mulLocal(vetor2);
vetor1 *= vetor2;
// o mesmo que vetor1 = vetor1.divLocal(vetor2);
vetor1 /= vetor2;
}
}
⚠️ Caso o uso de atributos virtuais apresente algum tipo de erro basta usar os métodos normalmente ⚠️